<meta charset="utf-8">
<script>

	 /*Задание №1: Почему код даёт именно такие результаты?*/

	var a = 1, b = 1, c, d;

		c = ++a; 

		alert(c);   // 2 -- Префиксный инкремент, увеличивает операнд на единицу.

		d = b++; 

		alert(d);  // 1 -- Постфиксный инкремент, прибавляет к операнду единицу, но результатом выражения будет являться первоначальное значение операнда.

		c = (2+ ++a); 

		alert(c);  // 5 -- (2+(2+1)) -- Не совсем понял почему получилось 5, а не 4.

		d = (2+ b++); 

		alert(d);  // 4 -- (2+ 2), прибавляет к операнду единицу, но результатом выражения будет являться первоначальное значение операнда.
		alert(a);  // 3                      
		alert(b);  // 3 -- Постфиксный инкремент               
</script>